#销售订单退货
class CreateSaleReturneds < ActiveRecord::Migration
  def self.up
    create_table :sale_returneds do |t|
      t.integer :customer_id      ,:null => false              #客户的ID
      t.integer :company_id       ,:null => false              #所属公司的ID
      t.integer :department_id    ,:null => false              #操作此进库的员工所在的部门ID
      t.integer :employee_id      ,:null => false              #操作此进库的员工ID
      t.integer :seq_number    , :default => 0  #流水号
      t.string  :order_number  , :default => 0  #单号
      t.integer :accountant_auditor_id          #会计审批人
      t.integer :associate_auditor_id           #内勤审批人
      t.string :linkman                         #联系人
      t.string :phone                           #联系电话
      t.string :receive_address                 #收货地址
      t.integer :warehouse_id                   #回到哪个仓库
      t.integer :warehouse_employee_id          #负责操作出库的员工
      t.integer :sale_order_id                  #相关的销售订单
      t.decimal :amount  , :precision => 10, :scale => 2  ,:default => 0      #退货订单总价
      t.date   :return_date                     #退货日期，客户要求退货的日期
      t.date   :action_date                     #退货日期，哪一天到的仓库
      t.string :description                     #备注或一些更详细信息可以在这儿填写
      t.string :accountant_audit_opinion        #会计审批意见
      t.string :associate_audit_opinion         #内勤，销售助理，审批时的意见
      t.string  :auditing_status  ,:default => ""   #会计审批状态
      t.string  :deal_with_status ,:default => ""   #处理状态，暂存，撤消，等。
      t.string  :store_status     ,:default => ""   #库存处理状态，比如正在准备出库，已经出库，等。
      t.integer :entry_employee_id              #负责入库的员工
      t.integer :is_locked     , :limit => 1    , :default => 0 #锁定 1为True 0为False
      t.integer :lock_version  , :default => 0  #乐观锁
      t.timestamps
    end
  end

  def self.down
    drop_table :sale_returneds
  end
end
